Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update snow DA cycling for the fractional grid setting. #1687

Merged
merged 17 commits into from
Jul 20, 2023

Conversation

jiaruidong2017
Copy link
Contributor

@jiaruidong2017 jiaruidong2017 commented Jun 11, 2023

This PR will allow users to run JEDI-based LETKFOI update for snow depth analysis w/o the fractional grids settings of GFSv17.

In previous GFS versions, the variable for total snow depth (snwdph) was only defined over land grid cells. In the new GFSv17 restarts, with fractional grids, the snwdph variable in the restarts is the average snow depth over the grid cell [ = area-weighted average of the snow depth over sea ice (snodi) and over land (snodl)]. snodl is the snow depth over land portion of a cell, snodi is the snow depth over ice portion of a cell, and snwdph is the snow depth over the entire grid cell.

This PR depend on:
NOAA-EMC/GDASApp#504

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)

How Has This Been Tested?

Ran a standalone landanl.sh job on Hera.

Checklist

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes need updates to the documentation. I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • New and existing tests pass with my changes
  • Any dependent changes have been merged and published

Copy link
Contributor

@aerorahul aerorahul left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please see inline comments.

@@ -169,6 +169,7 @@ if [[ -d "${script_dir}/gdas.cd" ]]; then
cd "${top_dir}/ush" || exit 1
${LINK} "${script_dir}/gdas.cd/ush/ufsda" .
${LINK} "${script_dir}/gdas.cd/ush/jediinc2fv3.py" .
${LINK} "${script_dir}/gdas.cd/ush/land/gfs-land_gfsv17.yaml" .
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is a yaml file being linked into ush?

- [$(HOMEgfs)/fix/gdas/fv3jedi/fv3files/akbk$(npz).nc4, $(DATA)/fv3jedi/akbk.nc4]
- [$(HOMEgfs)/fix/gdas/fv3jedi/fv3files/fmsmpp.nml, $(DATA)/fv3jedi/fmsmpp.nml]
- [$(HOMEgfs)/fix/gdas/fv3jedi/fv3files/field_table_gfdl, $(DATA)/fv3jedi/field_table]
- [$(HOMEgfs)/ush/gfs-land_gfsv17.yaml, $(DATA)/fv3jedi/gfs-land.yaml]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this in ush? This should be a file in $(HOMEgfs)/parm/parm_gdas/...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can handle this case in the land_jedi_fix.yaml itself instead of adding this yaml.

Comment on lines 186 to 189
if localconf.FRAC_GRID:
jedi_fix_list_path = os.path.join(self.task_config.HOMEgfs, 'parm', 'parm_gdas', 'land_jedi_fix_gfsv17.yaml')
else:
jedi_fix_list_path = os.path.join(self.task_config.HOMEgfs, 'parm', 'parm_gdas', 'land_jedi_fix.yaml')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can do this in the land_jedi_fix.yaml itself instead of in the python script.

.gitignore Outdated
@@ -131,6 +131,7 @@ ush/global_chgres_driver.sh
ush/global_cycle.sh
ush/global_cycle_driver.sh
ush/jediinc2fv3.py
ush/gfs-land_gfsv17.yaml
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is a yaml in a ush?

@jiaruidong2017
Copy link
Contributor Author

Thanks @aerorahul for your quick review. I did agree with all you suggestions.

However, we just had a meeting and plan to handle the fractional grid issue in JEDI fv3-jedi repo directly. Therefore, I will close this PR. Thanks again.

@jiaruidong2017
Copy link
Contributor Author

@aerorahul @CoryMartin-NOAA I have a concern. The current global-workflow supports both fractional grid cells and non fractional grid cells. If the above proposed changes are made in the JEDI fv3-jedi repo, the snow DA cycling will not work any more for the non fractional grid settings.

@jiaruidong2017 jiaruidong2017 marked this pull request as draft June 14, 2023 00:55
@aerorahul
Copy link
Contributor

@aerorahul @CoryMartin-NOAA I have a concern. The current global-workflow supports both fractional grid cells and non fractional grid cells. If the above proposed changes are made in the JEDI fv3-jedi repo, the snow DA cycling will not work any more for the non fractional grid settings.

@jiaruidong2017
global-workflow does not support non-fractional grid IIRC. v17 will use fractional grid to my knowledge.

@CoryMartin-NOAA
Copy link
Contributor

So is this PR able to be closed then?

@jiaruidong2017
Copy link
Contributor Author

As I mentioned in GDASApp's PR, the proposed changes can support both fractional and non fractional grids in the global-workflow.

@CoryMartin-NOAA
Copy link
Contributor

@jiaruidong2017 is that true for the model or just the DA?

@aerorahul
Copy link
Contributor

The workflow no longer supports non-fractional grid.

@jiaruidong2017
Copy link
Contributor Author

@CoryMartin-NOAA I mean for snow DA only

@CoryMartin-NOAA
Copy link
Contributor

@jiaruidong2017 if the model doesn't support it, then there is no real need for us to support both for the snow DA

@jiaruidong2017
Copy link
Contributor Author

@aerorahul Do you mean we need to remove all FRAC_GRID?

@JessicaMeixner-NOAA
Copy link
Contributor

The ufs-weather-model itself does support both fractional and non-fractional grid to my knowledge. @junwang-noaa can correct if needed.

@jiaruidong2017
Copy link
Contributor Author

@CoryMartin-NOAA I have no idea whether the model support the non fractional grid or not, and I will check this with @barlage

@jiaruidong2017
Copy link
Contributor Author

Thanks @JessicaMeixner-NOAA for your info.

Copy link
Contributor

@CoryMartin-NOAA CoryMartin-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FRAC_GRID is still a variable in the workflow from a search, so from what I can tell, this one line change looks good to me. But is this PR in draft waiting for a GDASApp hash?

@jiaruidong2017
Copy link
Contributor Author

jiaruidong2017 commented Jul 6, 2023

@CoryMartin-NOAA Yes, this PR depends on the GDASApp PR #504

@junwang-noaa
Copy link
Contributor

Yes, the model does support both fractional grid and non-fractional grid.

@aerorahul
Copy link
Contributor

The model does support non-fractional grids.
GFSv17 and GEFSv13 are only implementing fractional grids.
The global-workflow has a variable FRAC_GRID, however, the workflow does not support non-fractional grid configurations. We may remove FRAC_GRID references from the global-workflow.
Use at your own risk.

@WalterKolczynski-NOAA WalterKolczynski-NOAA removed the CI-Orion-Passed **Bot use only** CI testing on Orion for this PR has completed successfully label Jul 13, 2023
@CoryMartin-NOAA
Copy link
Contributor

@jiaruidong2017 verify that NOAA-EMC/GDASApp@4452b0a has what you need and if so, update this PR to use this commit

@jiaruidong2017
Copy link
Contributor Author

Thanks @CoryMartin-NOAA and I will test the NOAA-EMC/GDASApp@4452b0a

@WalterKolczynski-NOAA WalterKolczynski-NOAA added the CI-Orion-Ready **CM use only** PR is ready for CI testing on Orion label Jul 19, 2023
@emcbot emcbot added CI-Orion-Building **Bot use only** CI testing is cloning/building on Orion and removed CI-Orion-Ready **CM use only** PR is ready for CI testing on Orion labels Jul 19, 2023
@TerrenceMcGuinness-NOAA TerrenceMcGuinness-NOAA added CI-Orion-Ready **CM use only** PR is ready for CI testing on Orion and removed CI-Orion-Building **Bot use only** CI testing is cloning/building on Orion labels Jul 19, 2023
@emcbot emcbot added CI-Orion-Building **Bot use only** CI testing is cloning/building on Orion CI-Orion-Running **Bot use only** CI testing on Orion for this PR is in-progress and removed CI-Orion-Ready **CM use only** PR is ready for CI testing on Orion CI-Orion-Building **Bot use only** CI testing is cloning/building on Orion labels Jul 19, 2023
@emcbot
Copy link

emcbot commented Jul 19, 2023

Automated global-workflow Testing Results:

Machine: Orion
Start: Wed Jul 19 09:36:21 CDT 2023 on Orion-login-1.HPC.MsState.Edu
---------------------------------------------------
Checkout:                      *SUCCESS*
Checkout: Completed at Wed Jul 19 09:38:16 CDT 2023
Build:                         *SUCCESS*
Build: Completed at Wed Jul 19 10:11:32 CDT 2023
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:40 CDT 2023 for experiment C48_S2S_f30ac6bb
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:45 CDT 2023 for experiment C96_atm3DVar_f30ac6bb
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:50 CDT 2023 for experiment C96C48_hybatmDA_f30ac6bb

@emcbot
Copy link

emcbot commented Jul 19, 2023

Automated global-workflow Testing Results:

Machine: Orion
Start: Wed Jul 19 09:36:21 CDT 2023 on Orion-login-1.HPC.MsState.Edu
---------------------------------------------------
Checkout:                      *SUCCESS*
Checkout: Completed at Wed Jul 19 09:38:16 CDT 2023
Build:                         *SUCCESS*
Build: Completed at Wed Jul 19 10:11:32 CDT 2023
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:40 CDT 2023 for experiment C48_S2S_f30ac6bb
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:45 CDT 2023 for experiment C96_atm3DVar_f30ac6bb
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:50 CDT 2023 for experiment C96C48_hybatmDA_f30ac6bb
Experiment C48_S2S_f30ac6bb completed: *SUCCESS*
Experiment C48_S2S_f30ac6bb Completed at Wed Jul 19 11:02:09 CDT 2023
with 18 successfully completed jobs

@emcbot
Copy link

emcbot commented Jul 19, 2023

Automated global-workflow Testing Results:

Machine: Orion
Start: Wed Jul 19 09:36:21 CDT 2023 on Orion-login-1.HPC.MsState.Edu
---------------------------------------------------
Checkout:                      *SUCCESS*
Checkout: Completed at Wed Jul 19 09:38:16 CDT 2023
Build:                         *SUCCESS*
Build: Completed at Wed Jul 19 10:11:32 CDT 2023
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:40 CDT 2023 for experiment C48_S2S_f30ac6bb
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:45 CDT 2023 for experiment C96_atm3DVar_f30ac6bb
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:50 CDT 2023 for experiment C96C48_hybatmDA_f30ac6bb
Experiment C48_S2S_f30ac6bb completed: *SUCCESS*
Experiment C48_S2S_f30ac6bb Completed at Wed Jul 19 11:02:09 CDT 2023
with 18 successfully completed jobs
Experiment C96_atm3DVar_f30ac6bb completed: *SUCCESS*
Experiment C96_atm3DVar_f30ac6bb Completed at Wed Jul 19 12:36:09 CDT 2023
with 89 successfully completed jobs

@emcbot
Copy link

emcbot commented Jul 19, 2023

Automated global-workflow Testing Results:

Machine: Orion
Start: Wed Jul 19 09:36:21 CDT 2023 on Orion-login-1.HPC.MsState.Edu
---------------------------------------------------
Checkout:                      *SUCCESS*
Checkout: Completed at Wed Jul 19 09:38:16 CDT 2023
Build:                         *SUCCESS*
Build: Completed at Wed Jul 19 10:11:32 CDT 2023
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:40 CDT 2023 for experiment C48_S2S_f30ac6bb
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:45 CDT 2023 for experiment C96_atm3DVar_f30ac6bb
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:50 CDT 2023 for experiment C96C48_hybatmDA_f30ac6bb
Experiment C48_S2S_f30ac6bb completed: *SUCCESS*
Experiment C48_S2S_f30ac6bb Completed at Wed Jul 19 11:02:09 CDT 2023
with 18 successfully completed jobs
Experiment C96_atm3DVar_f30ac6bb completed: *SUCCESS*
Experiment C96_atm3DVar_f30ac6bb Completed at Wed Jul 19 12:36:09 CDT 2023
with 89 successfully completed jobs
Experiment C96C48_hybatmDA_f30ac6bb completed: *SUCCESS*
Experiment C96C48_hybatmDA_f30ac6bb Completed at Wed Jul 19 13:42:09 CDT 2023
with 151 successfully completed jobs

@emcbot emcbot added CI-Orion-Passed **Bot use only** CI testing on Orion for this PR has completed successfully and removed CI-Orion-Running **Bot use only** CI testing on Orion for this PR is in-progress labels Jul 19, 2023
@emcbot
Copy link

emcbot commented Jul 19, 2023

Automated global-workflow Testing Results:

Machine: Orion
Start: Wed Jul 19 09:36:21 CDT 2023 on Orion-login-1.HPC.MsState.Edu
---------------------------------------------------
Checkout:                      *SUCCESS*
Checkout: Completed at Wed Jul 19 09:38:16 CDT 2023
Build:                         *SUCCESS*
Build: Completed at Wed Jul 19 10:11:32 CDT 2023
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:40 CDT 2023 for experiment C48_S2S_f30ac6bb
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:45 CDT 2023 for experiment C96_atm3DVar_f30ac6bb
Created experiment:            *SUCCESS*
Case setup: Completed at Wed Jul 19 10:11:50 CDT 2023 for experiment C96C48_hybatmDA_f30ac6bb
Experiment C48_S2S_f30ac6bb completed: *SUCCESS*
Experiment C48_S2S_f30ac6bb Completed at Wed Jul 19 11:02:09 CDT 2023
with 18 successfully completed jobs
Experiment C96_atm3DVar_f30ac6bb completed: *SUCCESS*
Experiment C96_atm3DVar_f30ac6bb Completed at Wed Jul 19 12:36:09 CDT 2023
with 89 successfully completed jobs
Experiment C96C48_hybatmDA_f30ac6bb completed: *SUCCESS*
Experiment C96C48_hybatmDA_f30ac6bb Completed at Wed Jul 19 13:42:09 CDT 2023
with 151 successfully completed jobs

@WalterKolczynski-NOAA
Copy link
Contributor

Is this ready to merge?

Copy link
Contributor

@aerorahul aerorahul left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good.

@aerorahul
Copy link
Contributor

Assuming the hashes of gdasapp are correct, merging now.

@aerorahul aerorahul merged commit 14cca38 into NOAA-EMC:develop Jul 20, 2023
4 checks passed
@jiaruidong2017 jiaruidong2017 deleted the feature/land_snodl branch July 20, 2023 18:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI-Orion-Passed **Bot use only** CI testing on Orion for this PR has completed successfully
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants